Wireless data devices have proliferated in recent years. The popularity of these devices is based on their ability to receive e-mail and other data remotely so that the user can always be “in touch” with the office.
Many of these devices have a “push” architecture that eliminates the hassles of the traditional “pull” devices, in which the user must periodically connect to an e-mail server to check for new messages, or click on an embedded Web link to receive data. In contrast, with a push device, e-mail messages and other data such as documents are automatically routed to the handheld device, without the active participation of the user.
All wireless data devices are susceptible to failure of data delivery. A pushed document may fail to be delivered to a device for a number of reasons. For example, the device may be out of coverage, turned off, and the like. However, there are many situations where it is very important that the pushed content successfully reaches a wireless data device. For example, some organizations send out an emergency contact list that is frequently updated. The purpose of the emergency contact list is to enable key people to be contacted in the event of disaster or emergency, so it is very important for this document to be delivered to the wireless devices in a reliable manner.
Known wireless data devices do not include an automated method for determining whether pushed data was successfully delivered to the device. In some devices, determining that the delivery was unsuccessful is complex and involves waiting until a flow control timeout period (typically ten minutes) has expired for the request.
Consequently, known wireless data devices also do not have functionality to automatically resend pushed data that was not successfully delivered to the device. In known devices, retrying the sending of pushed data has to be done manually by determining the list of devices for which the delivery was unsuccessful, reforming the requests for the devices that failed, and using the originating application to resubmit the requests for each of these devices. Multiple failures require this procedure to be repeated many times, which results in an arduous process that is prone to error.
Based on the foregoing, there is a need for a system and method for automatically confirming the delivery of pushed data to wireless data devices and, if necessary, automatically retrying the delivery of the data.